Participant response system for the team selection and method therefor

ABSTRACT

A method for selecting teams from a group of participants using a participant response system comprises the steps of collecting participant information and selecting teams of participants by comparing the collected participant information with team requirement information using a computer-implemented numerical optimization technique.

FIELD OF THE INVENTION

The present invention relates generally to participant response systems and in particular, to a team selection method and participant response system employing the same.

BACKGROUND OF THE INVENTION

Participant response systems for enabling participants of an event to enter responses to posed questions, motions or the like are well known in the art and have wide applicability. For example, during a conference, seminar or the like, participants can be provided with handsets that enable the participants to respond to questions, or to vote on motions raised during the conference or seminar. In the entertainment field, audience members can be provided with handsets that enable the audience members to vote for entertainment programmes or sports events. These participant response systems are also applicable in the field of education. Participants can be provided with handsets that enable the participants to respond to questions posed during lessons, tests or quizzes. Of significant advantage, these participant response systems provide immediate feedback to presenters, facilitators, entertainment programme producers, or event organizers. With respect to the field of education, research shows that facilitators teach and participants learn more effectively when there is rapid feedback concerning the state of participants' comprehension or understanding. It is therefore not surprising that such participant response systems are gaining wide acceptance in the field of education.

Participant response systems fall generally into two categories, namely wired and wireless participant response systems. In wired participant response systems, participants respond to posed questions or vote on motions using remote units that are physically connected to a local area network by cables and communicate with a base or host computer over wired links. In wireless participant response systems, the remote units communicate with the base or host computer over wireless links.

A number of different wired and wireless participant response systems have been considered. For example, U.S. Pat. No. 4,247,908 to Lockhart, Jr. et al. discloses a two-way communication system for use with a host computer that includes a control unit, a base station and multiple, hand-held, portable radio/data terminal units. The control unit interfaces directly with the host computer but uses a radio link to interface with the portable radio/data terminal units. Each portable radio/data terminal unit includes a two-way radio and a data terminal. The data terminal includes a keyboard for data entry and an LED display for readout of either received data or locally generated data. The host computer initiates communication through polling and/or selection of portable radio/data terminal units via the control unit. The control unit, in response to a “poll” from the host computer, responds by sending either a previously received message from a portable radio/data terminal unit, or if no message has been received, a “no message” response. Polling by the control unit is an invitation to the portable radio/data terminal units to send data to the control unit to be stored, grouped if necessary and sent on to the host computer. The control unit polls the portable radio/data terminal units by address in a particular sequence. The control unit transmits acknowledgements to the portable radio/data terminal units for received data on the next polling cycle.

U.S. Pat. No. 5,002,491 to Abrahamson et al. discloses an interactive electronic classroom system for enabling facilitators to teach participants concepts and to receive immediate feedback regarding how well the participants have learned the taught concepts. Structure is provided for enabling participants to proceed in lockstep or at their own pace through exercises and quizzes, responding electronically to posed questions. The facilitator is able to receive the responses, and to interpret a readout, in histogram or other graphic display form, of the responses. The electronic classroom comprises a central computer and a plurality of participant computers, which range from simple devices to full fledged personal computers, connected to the central computer over a network. Optional peripheral hardware, such as video cassette recorders (VCRs) or other recording/reproducing devices, may be used to provide lessons to participants in association with the computer network.

U.S. Pat. No. 6,790,045 to Drimmer discloses a method and system for analyzing participant performance by classifying participant performance into discrete performance classifications associated with corresponding activities related to an electronic course. An observed participant performance level for at least one of the performance classifications is measured. A benchmark performance level or range is established for one or more of the performance classifications. It is then determined whether the observed participant performance level is compliant with the established benchmark performance level for the at least one performance classification. Instructive feedback is determined for the observed participant based upon any material deviation of the observed participant performance from at least one benchmark.

U.S. Patent Application Publication No. 2004/0072136 to Roschelle et al. discloses a method and system for assessing a participant's understanding of a process that may unfold over time and space. The system comprises thin client devices in the form of wireless, hand-held, palm-sized computers that communicate with a host workstation. The system provides a sophisticated approach of directing participants to perform self-explanation, and enables instructors to enhance the value of this pedagogical process by providing meaningful and rapid feedback in a classroom setting.

U.S. Patent Application Publication No. 2004/0072497 to Buehler et al. discloses a response system and method of retrieving responses from a plurality of users. The response system comprises a plurality of base units and a plurality of response units. Each of the response units is adapted to receive a user input selection and to communicate that user's input selection to at least one base unit utilizing wireless communication. Personality data is provided for the response units to facilitate communication with a particular base unit. The personality data of a particular response unit is changed when it is desired to change the base unit to which that response unit communicates. This allows a response unit to become grouped with a particular base unit at a particular time and become grouped with another base unit at another particular time.

Although prior art participant response systems allow questionnaires to be administered to participants and the response data gathered, these participant response systems typically have limited functionality for organizing teams based on the gathered data. In interactive and collaborative classroom activities, for example, it is often desired or required to divide the class into smaller groups or teams. However, as the grouping of participants into teams can be done in a variety of ways, and as there are typically a significant number of possible factors that impact the division decisions, a full consideration of all of the factors prior to dividing the class into groups or teams is often too difficult and too time-consuming to perform. As a result, the make-up of groups or teams is typically less than ideal.

It is therefore an object of the present invention to provide a novel team selection method and a novel participant response system employing the method.

SUMMARY OF THE INVENTION

Accordingly, in one aspect there is provided a method for selecting teams from a group of participants using a participant response system comprising the steps of collecting participant information; and selecting teams of participants by comparing the collected participant information with team requirement information using a computer-implemented numerical optimization technique.

In one embodiment, the selecting comprises calculating possible team combinations, each of the team combinations having an associated discrepancy value, and selecting one team combination thereby to select the teams of participants at least based on the discrepancy values. The method further comprises creating at least one profile for each participant, comparing the profiles of the participants to yield scores for the participants and using the scores to calculate the possible team combinations. Possible team combinations that fail to satisfy the team requirement information are eliminated prior to selecting the teams of participants.

In one embodiment, the participant information is collected from one or more of responses to at least one participant questionnaire, a facilitator and past participant information. The responses to the at least one participant questionnaire may be collected electronically from remote units associated with the participants. The at least one participant questionnaire and the team requirement information may be defined by the facilitator.

According to another aspect, there is provided a participant response system comprising a plurality of remote units, each remote unit configured to generate data in response to participant questionnaire input; and processing structure communicating with the remote units, said processing structure comparing said data collected from said remote units with team requirement information using a numerical optimization technique and selecting teams of participants based on the comparison.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments will now be described more fully with reference to the accompanying drawings in which:

FIG. 1 is a schematic plan view of a participant response system;

FIG. 2 is another schematic view of the participant response system of FIG. 1;

FIG. 3 is a perspective view of an interactive whiteboard forming part of the participant response system of FIG. 1;

FIGS. 4A and 4B are side elevational and top plan views of a receiver forming part of the participant response system of FIG. 1;

FIG. 5 is a block diagram of the receiver of FIGS. 4A and 4B;

FIG. 6 is a front elevational view of a remote unit forming part of the participant response system of FIG. 1;

FIG. 7 is a front elevational view of a display of the remote unit of FIG. 6;

FIG. 8 is a block diagram of the remote unit of FIG. 6;

FIG. 9 is a participant profile questionnaire administered by the participant response system of FIG. 1;

FIG. 10A is a participant management window presented by the participant response system of FIG. 1, showing a participant roster;

FIG. 10B is the participant management window of FIG. 10A showing the remote units associated with the students of the participant roster;

FIG. 10C shows drop down menus of the participant management window of FIG. 10A;

FIGS. 10D and 10E show a list of teams and a list of team members, respectively;

FIG. 11 shows a view of a participant profile;

FIGS. 12A and 12B show a participant profile matrix and a new matrix entry form, respectively;

FIG. 13 shows a team profile;

FIG. 14 is a flowchart showing steps of a team selection routine executed by the participant response system of FIG. 1;

FIGS. 15A and 15A are exemplary average pair-wise difference scores for interest profile, personality profile, grades, and time worked together, respectively, calculated for a group of participants;

FIG. 16 is a flowchart showing steps of a team enumerating process employed by the team selection routine of FIG. 14;

FIG. 17 shows results of the team enumerating process of FIG. 16; and

FIG. 18 is a target mix section of the team profile of FIG. 13, showing weighting factors and signs for each option.

DETAILED DESCRIPTION OF THE EMBODIMENTS

Turning now to FIGS. 1 and 2, a participant response system is shown and is generally identified by reference numeral 50. In this embodiment, participant response system 50 is employed in a classroom, lecture hall or theatre of an educational institution such as for example a school, university, college or the like. As can be seen, the participant response system 50 comprises a base or host computer 52, an interactive whiteboard (IWB) 54 physically connected to the host computer 52 via a cable 56, a radio frequency (RF) receiver 58 physically connected to the host computer 52 via a universal serial bus (USB) cable 60, and a plurality of wireless, hand-held remote units 62 communicating with the host computer 52 via the receiver 58.

The participant response system firmware in this embodiment is implemented on top of IEEE802.15.4 media access control (MAC) protocol layer software provided by Texas Instruments Incorporated (TI) of Texas, U.S.A. The TI MAC protocol layer software comprises a small real-time kernel and so called Z-stack™ ZigBee compliant protocol stack to provide simple real-time operating system (OS) facilities such as for example, timer management, task management and interrupt management. Abstraction layers are used to separate the OS and the hardware drivers for ease of porting to a different OS and hardware platform.

In this embodiment, the IWB 54 is a 600i series interactive whiteboard manufactured by SMART Technologies ULC., of Calgary, Alberta, Canada, assignee of the subject application. As is best seen in FIG. 3, the IWB 54 comprises a large, analog resistive touch screen 70 having a touch surface 72. The touch surface 72 is surrounded by a bezel 74. A tool tray 76 is affixed to the bezel 74 adjacent the bottom edge of the touch surface 72 and accommodates one or more tools that are used to interact with the touch surface 72. The touch screen 70 is mounted on a wall surface via a mounting bracket 78. A boom assembly 80 is also mounted on the wall surface above the touch screen 70 via the mounting bracket 78. The boom assembly 80 comprises a speaker housing 82 accommodating a pair of speakers (not shown), a generally horizontal boom 84 extending outwardly from the speaker housing 82 and a projector 86 adjacent the distal end of the boom 84. The projector 86 is aimed back towards the touch screen 70 so that the image projected by the projector 86 is presented on the touch surface 72.

Turning now to FIGS. 4A, 4B and 5, the receiver 58 is better illustrated. Receiver 58 comprises a casing 100 adapted to be desktop or wall mounted. An L-shaped omni-directional antenna 102 is mounted on the front end of the casing 100. The rear end of the casing 100 receives the USB cable 60 via a connector 104. A plurality of light emitting diodes (LEDs) 106 is provided on the top surface of the casing 100 with the LEDs being illuminated to provide visual feedback concerning the operational status of the receiver 58. In this embodiment, the LEDs 106 comprise a power status LED and communications status LEDs. Alternatively, the receiver 58 may provide visual feedback via a display such as a liquid crystal display (LCD) or via both LEDs and an LCD. The receiver electronics are accommodated by the casing 100 and comprise a microprocessor 110 that communicates with non-volatile, random access memory (NVRAM) 112, an LED driver 114 and a USB-UART bridge 116. Power is provided to the receiver 58 via the USB connection.

One of the remote units 62 is shown in FIGS. 6 to 8. As can be seen, the remote unit 62 comprises a casing 120 having a keypad 122, an LCD or other suitable display 124, a power button 126 and an optional battery status LED (not shown) on its front surface. In this embodiment, keypad 122 comprises ten dual character (A to J/0 to 9) buttons 130, a plus/minus (+/−) button 132, a fraction/decimal (x/y) button 134, a true/yes (T/Y) button 136, a false/no (F/N) button 138, a delete (del) button 140, up and down scroll (̂/v) buttons 142 and 144, a menu button 146, a question/hands up (?) button 148 and an enter button 150. Those of skill in the art will appreciate that the form of the keypad shown in FIG. 6 is exemplary, and that the keypad 122 may alternatively comprise a different set of keys, a full QWERTY or DVORAK key set or a subset thereof. If desired, the entire physical keypad or a portion thereof may be replaced with a touch screen to allow a user to interact with virtual keys.

The display 124 comprises an upper row of LCD icons 160 disposed above a character display area 162. The LCD icons 160 comprise a question number icon 164, a user status icon 166, a network status icon 168, a hands-up (?) icon 170, a battery status icon 172 and a transmission status icon 174. The character display area 162 comprises a 128×48 pixel array that is divided into three lines. Each line is configured to display a total of sixteen (16) characters. Remote unit electronics are accommodated by the casing 120 and comprise an LCD module 200 that communicates with the display 124, an LCD controller 202 that drives the LCD module 200, a microprocessor 204 that communicates with the LCD controller 202 and the keypad 122, as well as with NVRAM 206 and a printed circuit board, omni-directional antenna 210. Power is provided to the remote unit 62 by non-rechargeable or rechargeable batteries (not shown) accommodated by the casing 120. Alternate power sources such as solar sells or manually cranked generators can also be used to power the remote unit 62. The remote unit 62 may also be powered by a standard 110V/220V mains power source via a power cord or a power adapter. When the remote unit 62 is equipped with rechargeable batteries and is connected to the standard 110/220V mains power source, it will respond to the host computer 52 and charge the batteries at the same time. When battery charging has been completed, an indicator provides this status to the user to notify the user that the remote unit 62 can be used in a wireless fashion.

The host computer 52 runs participant response application software comprising a session manager that maintains the state of the participant response system 50 and presents participant response system information in one or more windows. The session manager is responsible for downloading to the remote units 62 the response formats (e.g. true/false, yes/no, multiple choice, numerical, etc.), for the questions of the questionnaire being administered, for receiving responses to questions input by participants using the remote units 62 and for keeping track of the question each participant is responding to. The session manager is also responsible for aggregating responses to questions received from participants into results, and grading the responses to the questions.

The host computer 52 also runs SMART Notebook™ whiteboarding software to facilitate interaction with the IWB 54. As a result, the display output of the host computer 52 is conveyed to the IWB 54 and is used by the projector 78 to present an image on the touch surface 72. Pointer interactions with the touch surface 72 are detected by the touch screen 70 and conveyed to the host computer 52. The display output of the host computer 52 is in turn adjusted by the host computer 52 to reflect the pointer activity. Depending on the nature of the pointer activity, the host computer 52 may treat the pointer contacts as writing or erasing or may treat the pointer contacts as mouse events. The mouse events may be used to control execution of application programs, such as for example the whiteboarding software executed by the host computer 52. In this manner, the IWB 54 can be used by the instructor to create and administer questionnaires and to analyze questionnaire results.

In addition, the participant response application software comprises an administration application that provides a graphical user interface for the session manager to allow the instructor to carry out the various functions of a facilitator. These functions include composing participant profile questionnaires, sending profile questionnaires to participants, composing profile quizzes, entering participant data into the profile quizzes, composing team profiles, and entering data into or editing data within the team profiles.

In this embodiment, and as shown in FIG. 2, the host computer 52, IWB 54 and receiver 58 are physically connected by cables 56 and 60. Messages exchanged between the host computer 52, IWB 54 and receiver 58 are structured using extensible markup language (XML) over HTTP. The receiver 58 and the remote units 62 communicate over a wireless radio frequency (RF) communications network. The microprocessor 110 of the receiver 58 thus provides both a USB interface and an RF interface and runs a service that translates messages in USB protocol to messages in radio frequency (RF) wireless protocol and vice versa as well as IEEE802.15.4 MAC layer software to manage the IEEE802.15.4 network thereby to permit the host computer 52 and remote units 62 to communicate. Messages exchanged between the session manager and the receiver 58 comprise a header, a command identification, message bytes and a checksum. Consistent overhead byte stuffing is employed to provide frame delimiting of packets thereby to facilitate the determination of the start and end of command packets. Messages exchanged between the receiver 58 and the remote units 62 do not include the header and the checksum as the IEEE802.15.4 protocol is used to handle packet addressing and ensure packet integrity.

The messages exchanged between the session manager, the receiver 58 and the remote units 62 include diagnostic messages, status messages and command messages. For example, in this embodiment, the diagnostic messages comprise, but are not limited to, firmware information query messages, remote unit transmit power query messages and channel identification query messages. Status messages comprise, but are not limited to, remote unit status messages, network status messages and personal area network (PAN) ID messages. Command messages comprise, but are not limited to, log-in messages, log-out messages, log-in grant messages, question download messages, optional response download messages, response upload messages, hands-up messages, test start messages and test end messages.

In this embodiment, wireless communications between the host computer 52 and the remote units 62 are carried out according to the IEEE802.15.4 specification, as described in PCT Application Publication No. WO/2008/083481 to Lam entitled “Participant Response System With Facilitated Communications Bandwidth” filed on Jan. 10, 2008 and assigned to the assignee of the subject application, the content of which is incorporated herein by reference in its entirety.

When a questionnaire is being administered to participants, the session manager generates one or more question download messages that include the question response formats for the questions of the questionnaire. The question download messages are then sent to the receiver 58, which in turn embeds the question download messages in the next beacon frame and broadcasts the beacon frame embodying the question download messages to all of the remote units 62 simultaneously. Upon receipt of the beacon frame, each active remote unit 62 in turn loads the question download messages into memory 206. The participant associated with each remote unit 62 can then use the scroll buttons 142 and 144 to select the question to which the participant wishes to respond so that the response format for the selected question is displayed. The host computer 52 also provides display data to the IWB 54 resulting in the projector 86 projecting the questions of the questionnaire on the touch surface 72 of the touch screen 70. In this embodiment, each question is displayed on the touch surface 72 independently.

When the question is a true/false type or a yes/no type question, the remote unit 62 displays possible responses that may be selected using either the true/yes button 136 or the false/no button 138. When the question is a multiple choice or a numeric question, the remote unit 62 displays either a range of possible responses or an entry field, to which a response may be entered using the dual character buttons 130, the +/− button 132, and/or the fraction/decimal button 134.

Once a response has been input into a remote unit 62 via the keypad 122 and the enter button 150 has been pressed, the remote unit 62 generates a response upload message that includes the question number and the participant's response, and sends the response upload message to the receiver 58. The receiver 58 in turn passes the response upload message to the host computer 52. The session manager saves the response upload message and analyzes the response to determine the result.

As mentioned previously, the participant response application software comprises an administration application that allows participant profile questionnaires to be created and administered and the results of the participant profile questionnaires together with other relevant information to be analyzed to allow teams to be selected. FIG. 9 shows an exemplary participant profile questionnaire 300 that is used to select teams at least based on responses to the participant profile questionnaire 300. In this example, the participant profile questionnaire 300 has been created by a facilitator who is a school class teacher, and is to be completed by participants who are students in the class. The participant profile questionnaire 300 may be created, for example, using participant response system question authoring software, as described in PCT Application Publication No. WO/2008/083490 to van Ieperen entitled “Participant Response System with Question Authoring/Editing Facility” filed on Jan. 10, 2008 and assigned to the assignee of the subject application, or using other suitable software. Alternatively, the facilitator may use a questionnaire that has been prepared by another party and saved on the host computer 52.

As can be seen, the participant profile questionnaire 300 comprises a set of questions 302 to 308 of the self-assessment type and generally related to participants' work and teamwork preferences (e.g. “Do you enjoy math?” or “Do you like being a leader?”). Questions 302 have a set of available response choices from which a participant may select. For example, each question 302 has five (5) response choices ranging from one (1) representing “do not like”, to five (5) representing “one of my favourites”. In this case, the numerical value of a response choice matches its index displayed to participants. Questions 304 prompt a participant to select from two available response choices, indexed as one (1) and two (2). However, depending on the facilitator's design and the nature of the question, the numerical value of the response choice may not necessarily match its index. For example, questions 306 are of “yes/no” type, and the numerical value of the available response choices are one (1) for “yes” and zero (0) for “no”, although the indexes displayed to participants for “yes” and “no” responses are one (1) and two (2), respectively. In the embodiment shown, the available response choices are displayed as discrete values, however the available response choices may alternatively be displayed as a slider or pointer for allowing the participant to select from a visually represented range of possible values. Still other question types are possible. For example, questions 308 provide an entry field allowing a participant to enter a response in the form of a string of numbers or text.

The questions of the participant profile questionnaire 300 are selected to enable participant teamwork characteristics, participant interest characteristics and other participant characteristics to be assessed. The responses to teamwork related questions allow participant personality profiles 482 to be created. The responses to interest related questions allow participant interest profiles 484 to be created. The responses to other questions allow other selection criteria 486 to be created. Typically, the questions are classified by the facilitator during set up of the participant profile questionnaire 300, by properly tagging each question in the question authoring/editing module (i.e. the SMART Notebook™ whiteboarding software in this embodiment) of the participant response application software.

The session manager maintains questionnaire results files for the participant profile questionnaire 300. A questionnaire results file contains the questions of the participant profile questionnaire 300 (including the identification associated with each question (question ID) and the category associated with each question), and records of the participants' responses to each question. Each record has an associated question ID and an identification associated with the participant who responded to the question.

The administration application maintains a participant roster 450 that is displayed in a participant management window as shown in FIGS. 10A and 10B. A legend or status panel 466 is also displayed to one side of the participant roster 450. Two tabs, namely a “Students” tab 462 and a “Clickers” tab 464 are selectable to change the information that is displayed in the participant roster 450. When the Students tab 462 is selected, participant roster 450 identifies the class name, the participants in the class by first and last name, the log-in status of the participants and whether any of the logged-in participants are using a remote device 62 having a low battery level. The manner by which remote unit battery levels are determined is described in PCT Application Publication No. WO/2008/083486 to Doerksen et al. entitled “Participant Response System Employing Battery Powered, Wireless Remote Units” filed on Jan. 10, 2008, and assigned to the assignee of the subject application, the content of which is incorporated herein by reference in its entirety.

When the Students tab 462 is selected, the legend panel 466 identifies the total number of participants in the class, the number of online participants, the number of offline participants, the number of anonymous participants, the number of participants in power save, the number of remote units used by participants with a low battery condition, the number of remote units with poor communication channel signal strength and the number of participants with questions.

When the Clickers tab 464 is selected, the participant roster 450 identifies the states of the remote units 62 assigned to the participants in the class, the serial numbers of the remote units, the names of the participants assigned to the remote units 62 and the signal strengths of the communication channels between the remote units and the host computer 52. With the Clickers tab 464 selected, the legend panel 466 presents some different information and in particular identifies the number of remotes units 62 issued to participants, the number of remote units 62 issued to online participants and the number of remote units issued to offline participants.

A menu is displayed above the participant roster 450 and comprises a “Manage” menu item 452 that allows teams that have been created to be managed. When the Manage menu item 452 is selected, a drop down menu comprising a “Participant Profiles” menu item 454 and a “Teams” menu item is displayed as 456, shown in FIG. 10C. Selection of the “Teams” menu item 456 displays a submenu comprising a “Create Teams . . . ” submenu item 458 and a “View Teams” submenu item 460. Of course, other methods of navigating through the graphical user interface would be known to those of skill in the art.

When the “View Teams” submenu item 460 is selected, a list of all the team profile names and the dates on which they were generated is displayed within the participant management window as shown in FIG. 10D. A team profile name in the list may be selected to view the teams associated with that team profile. For example, FIG. 10E shows the teams associated with the “Class Projects Teams” team profile 470 in FIG. 10D.

Information about each participant is stored in a respective participant profile 480. As illustrated in FIG. 11, the information stored in each participant profile 480 is classified into five (5) categories, generally indicated using reference numerals 482 to 490. In particular, the categories comprise a personality profile 482, an interest profile 484, other selection criteria 486, historical information about grades 488 and former teams and former activities 490. The information in these categories is input in a number of different ways depending on the category, such as by the facilitator, by the participants, and by transfer from previously-generated records and/or by transfer from other participant response systems previously used by the participant.

The personality profile 482 includes qualitative information about the participant. In this embodiment, this quantitative information includes the work ethic, attitude, and the sociability of the participant. The information of this category is input by the participant in response to the participant profile questionnaire 300 as self-evaluation. Optionally, the facilitator may input or adjust the information of this category for the participant.

The interest profile 484 includes information about the participant's subject and activity preferences. In this embodiment, this information includes whether the participant enjoys public speaking, writing, mathematics, acting in the role of leader, and so forth. The information of this category is input by the participant in response to the participant profile questionnaire 300 as self-evaluation. Optionally, the facilitator may input or adjust the information of this category for the participant by using a general participant profile matrix.

The other selection criteria 486 includes the age and gender of the participant, his or her seat or location in the classroom, and a list of names of other participants that he or she prefers to work with. The information of this category is input by the participant in response to the participant profile questionnaire 300 as self-evaluation. Optionally, the facilitator may input or adjust the information of this category for the participant by using the general participant profile matrix.

The historical information about grades 488 includes the grades of each participant. The information of this category is collected and stored by the participant response application software, and is entered automatically into the participant profile by the session manager.

The historical information about former teams and former activities 490 includes the previous teams and activities that the participant was involved with and the respective successes or failures. The information of this category is collected and stored by the participant response system, and is automatically entered into the participant profile by the session manager.

The facilitator may input or adjust the information of the participant profile 280 for one or more participants using a participant profile interface. FIG. 12A shows an exemplary participant profile interface 540 displayed in the participant management window that the facilitator uses to design and evaluate participant profile matrices 542. The participant profile interface 540 allows the facilitator to input or adjust information into the personality profile 482, the interest profile 484 and the other selection criteria 486 of the participant profile 480, and to save the information in a results data file. The participant profile interface 540 is exposed by selecting the “Participants Profiles” menu item 454. In the example shown, the participant profile interface 540 displays information concerning the extent to which participants are introverted or extroverted.

Each participant profile matrix 542 comprises a question 544, a minimum rank 546, a maximum rank 548, a list of participants 550 and buttons 552 to 560. The facilitator may input into the “rank” column 562 a rank value for each participant, may use buttons 552 and 554 to navigate to other matrices, and may use button 558 to save the participant profile matrix 542 to a file. The cancel button 560 may be used to discard changes and to exit the participant profile interface 540.

Clicking the “add new matrix” button 556 opens a “new matrix” interface 580, as illustrated in FIG. 12B. A question description 582 and minimum and maximum rank values 584 and 586, respectively, may then be added. If the “add to participant profile questionnaire” 588 is checked, this question is added to the participant profile questionnaire 300.

The desired characteristics of teams to be selected are set up by the facilitator using a team profile interface 600, shown in FIG. 13 that is displayed in the participant management window. The team profile interface 600 is exposed by selecting the “Create Teams . . . ” submenu item 458 and allows team selection criteria to be specified and teams to be generated according to the team selection criteria and participant profiles. If teams are out-of-date because, e.g., new participants joined the class after the teams were generated, or some participants left the class after the teams were generated, a warning message is displayed, and the names/IDs of the participants who are not in any team or who have left the class are highlighted in the team list. In this case existing teams can be maintained (while grouping new participants to a new team), or the teams can be regenerated.

The team profile interface 600 includes a text input box 602 for entering the name of the profile, and three sections 604, 610 and 618 corresponding to three information categories, namely team size, target mix and file location, respectively. The team size section 604 is used to define the desired team size. A desired team size, that is, the desired number of participants per team, may then be entered in input box 606. The target mix section 610 allows certain criteria for the team selection routine to be defined. In the embodiment shown, each criterion is provided with multiple options that may be selected. These selections generally define how the four (4) information categories generally indicated by reference numerals 482, 484, 486 and 488 of the participant profile 480 are to be used for selecting teams. For each statement in the target mix section 610, the extent to which the statement about the information in the participant profile 480 is agreed upon may be checked. For example, if grouping participants with similar interests together on the same team is very important in view of desired team characteristics, then the checkbox 616 under “strongly agree” next to the statement 614 “similar interest profiles” may be checked. The team profile interface 600 also contains a list (not shown) of additional criteria that may be selected. Criteria selected from this list of additional criteria may be added using the “Add Criterion” button 612. For example, a criterion that each team must contain only one gender of participants could be added.

The selections made in the target mix section 610 are converted into appropriate numerical weights of the information of the participant profile 480, including the personality profile 482, the interest profile 484, the other selection criteria 486 and the historical information about grades 488. As will be described below, a weight designates the importance of the corresponding information category for the team selection routine, and therefore defines the extent to which participants having similar characteristics for that category should be grouped into the same team.

The team profile interface 600 also comprises a file location section 618, which displays and allows the location of data files that are to be used by the team selection routine to be defined. The data files may include participant profile questionnaire results files 620 containing the responses made by the participants, participant profile matrices results files 624 completed by the facilitator, participants' grade files 628 and team history files 630. Optionally, the results of team feedback questionnaires completed by participants in the past (not shown) may also be included. In this embodiment, when a questionnaire results file 620 is defined, the dates 622 it was generated and last modified are displayed. Similarly, when a participant profile matrices results file 624 is defined, the dates 626 it was generated and last modified are displayed. The grade files 628 include grades for the participants for one or more graded items. The grades may be the cumulative term grades, or the grades for one or more projects or exams, depending on the facilitator's choice. The team history files 630 include the number of times each participant has worked with each other participant over a specific period of time.

The team profile interface 600 also has a “save” button 634 and a “cancel” button 636, which allow changed settings to be saved or discarded, respectively. A “generate teams” button 632 allows the team selection routine be run so as to generate the teams, as will now be described below.

The steps performed by the team selection routine are shown in FIG. 14. The team selection routine uses the information of the participant profile questionnaire 300, the participant profile matrices 540, and the team profile 600 for the determination of teams. The routine starts (step 702) after the data files are specified in the file location section 618 of the team profile 600, and the facilitator initiates the team selection routine. At step 704, the data in the specified data files is loaded. The loaded data is then checked to determine if it is sufficient for calculating characteristic scores (step 706). Specifically, at this step, a check is made to determine whether each results file specified in the file location section 618 exists, and whether it contains data for all participants.

If enough data is provided in the specified data files, the team selection routine proceeds to step 712. Otherwise, for example if a grade file only comprises the grade information of six of eight participants in the class, a warning message that further information is required for best team selection is displayed (step 708), and a prompt as to whether or not the team selection routine should continue is displayed (step 710). If “No” is chosen, the team selection routine is terminated (step 724) such that more data files may be added, and the team selection routine restarted later. If “Yes” is chosen at step 710, the team selection routine proceeds at step 712 using the available data and omitting any results files that do not have enough data.

At step 712, the normalized pair-wise difference score of each figure of measurement for each pair of participants in the participant roster is calculated based on the data loaded from the specified data files. Here, “figure of measurement” refers to a measurement value for a participant, where the “measurement” may be a response made by the participant, the grade of the participant in an exam or test, the time in minutes or hours that the participant was working with another participant, or any other measurement that is relevant to a participant's characteristics and performance. The normalized pair-wise difference score of a figure of measurement for a pair of participants describes the difference between the two participants.

The normalized pair-wise difference score of a measurement Q_(m) for a pair of participants H₁ and H₂ is the absolute value of the difference between the figures of measurement of two participants divided by the largest possible difference, given by:

D(H _(i) , H _(j) , Q _(m))=|A _(i,m) −A _(j,m) |/M(Q _(m))   (Eq. 1)

where A_(i,m) represents the quantized value of the figure of measurement Q_(m) for participant H_(i), A_(j,m) represents the quantized value of the figure of measurement Q_(m) selected by the participant H_(j), and M(Q_(m)) represents the largest possible difference of the figure of measurement Q_(m).

For example, the available choices for question Q1 in FIG. 9 are indexed as values 1, 2, . . . , 5. Here, M(Q₁)=5−1=4. If participant H₁ selected the response “1.—No, not at all”, corresponding to the value 1, and another participant H₂ selected the response “3.—Not sure”, corresponding to the quantized value 3, then the normalized pair-wise difference score for question Q1 in the participant profile questionnaire 300 for participants H₁ and H₂ would be |1-3|/4=0.5.

As another example, if the available choices of question Q7 shown in FIG. 9 are indexed as value 1 for “Yes” and value 0 for “No”, and if participant H₁ selected the response “No” and participant H₂ selected the response “Yes”, then the normalized pair-wise difference score for question Q7 for participants H₁ and H₂ would be |0-1|/1=1.

At step 714, the average pair-wise difference score of each figure of measurement for each pair of participants H_(i) and H_(j) is calculated by averaging the normalized pair-wise difference scores in the same category for each pair of participants H_(i) and H_(j).

For example, the average pair-wise difference score of the interest profile for a pair of participants H_(i) and H_(j) is calculated as:

I _(i,j)=MEAN(D(H _(i) , H _(j) , Q _(m)))   (Eq. 2)

for all Q_(m) in the interest profile, where the function MEAN( ) calculates the average.

The average pair-wise difference score of the personality profile for a pair of participants H_(i) and H_(j) is calculated as:

P _(i,j)=MEAN(D(H _(i) , H _(j) , Q _(m)))   (Eq. 3)

for all Q_(m) in the personality profile.

The average pair-wise difference score of the grade for each pair of participants H_(i) and H_(j) in the class is calculated as:

G _(i,j)=MEAN(D(H _(i) , H _(j) , Q _(m))), for all Q _(m) in the Grade files,   (Eq. 4)

where Q_(m) now represents the k-th exam, and

D(H _(i) , H _(j) , Q _(m))=|A _(i,m) −A _(j,m) |/M(Q _(m))

represents the normalized difference of grades A_(i,m) and A_(j,m) of the participants H_(i) and H_(j), respectively, for the exam Q_(m), divided by the largest possible grade difference M(Q_(m)) for the exam Q_(m). For example, if an exam was scored using a 4-point system, and the lowest possible grade is 1, then M(Q_(m))=3.

The average pair-wise difference score of the times worked together for each pair of participants H_(i) and H_(j) in the class is also calculated as:

T _(i,j)=1−N _(i,j) /N _(T)   (Eq. 5)

where N_(i,j) is the number of times that participants H_(i) and H_(j) were working together in the specified period, and N_(T) is the total number of times of the team worked together in the specified period.

FIGS. 15A and 15B illustrate a set of exemplary results calculated in step 714 for a class of ten (10) students.

Referring again to FIG. 14, at step 716, the number of teams is determined using the desired team size 606 designated in the team profile interface 600. Let S_(d) denote the desired team size, the number L of teams is determined by:

L=ROUND(n/S _(d))   (Eq. 6)

where the function ROUND(x) returns the nearest integer to the non-negative number x. For example, ROUND(4.5)=5 and ROUND(4.4)=4.

At this step, the remainder R=REM(n, S_(d))=n−S_(d)L is also calculated. If R=0, the participants are equally dividable into L teams, and every team has the desired number (S_(d)) of participants. Otherwise, let S_(min)=INT(n/L), where the function INT(x) returns the integer part of x, and let R₁ be the remainder of n/L (i.e., R₁=n−S_(min) L<L). Also let S_(max)=S_(min)+1. Then, R teams will have S_(max) participants and (L-R) teams will have S_(min) participants.

At step 718, the possible team combinations are generated. A team combination is a possible partition of all participants in the participant roster into a set of teams that satisfy the team size requirement. During this step, the order of participants in a team, or the order of teams in a team combination, is irrelevant. For example, when dividing four participants H₁, H₂, H₃ and H₄ into teams each having two participants, the team combination {(H₁, H₂), (H₃, H₄)}, where a pair of round brackets ( ) represents a team, is equivalent to the team combination {(H₃, H₄), {(H₁, H₂)}. Also, a team (H₁, H₂) is in fact the same team of (H₂, H₁). As will be understood, there are only three team combinations in this case: {(H₁, H₂), (H₃, H₄)}, {(H₁, H₃), (H₂, H₄)}, and {(H₁, H₄), (H₂, H₃)}.

If there are L teams, where the size of the l-th team is k_(l) (l=1, 2, . . . L), and the number of permutations of n participants is n! (note: a permutation of the same group of participants in a team does not change the team; similarly, the permutation of teams does not change the team combination), then the total number of possible team combinations is calculated as:

$\begin{matrix} {C = \frac{n!}{{k_{1}!}{k_{2}!}\mspace{14mu} \ldots \mspace{14mu} {k_{L}!}{L!}}} & \left( {{Eq}.\mspace{14mu} 7} \right) \end{matrix}$

When all teams are of the same size k, the total number of possible team combinations is:

$\begin{matrix} {C = \frac{n!}{\left( {k!} \right)^{n/k}{\left( {n/k} \right)!}}} & \left( {{Eq}.\mspace{14mu} 8} \right) \end{matrix}$

A general procedure of enumerating all possible team combinations is as follows:

a) allocate a participant to the first team, and then find all possibilities of the other (k₁−1) participants from (n−1) unallocated participants. Thus, all possibilities for the first team have the same participant. The number of possibilities is expressed as:

$\begin{matrix} {\begin{pmatrix} {n - 1} \\ {k_{1} - 1} \end{pmatrix} = {\frac{\left( {n - 1} \right)!}{{\left( {k_{1} - 1} \right)!}{\left( {n - k_{1}} \right)!}}.}} & \left( {{Eq}.\mspace{14mu} 9} \right) \end{matrix}$

b) for each possibility of the first team, allocate a participant from the (n−k₁) participants to the second team, and then find all possibilities of the other (k₂−1) participants from (n−k₁−1) unallocated participants. Thus, all possibilities for the second team have the same participant. The number of possibilities of the second team for each possibility of the first team is expressed as:

$\begin{matrix} {\begin{pmatrix} {n - k_{1} - 1} \\ {k_{2} - 1} \end{pmatrix} = {\frac{\left( {n - k_{1} - 1} \right)!}{{\left( {k_{2} - 1} \right)!}{\left( {n - k_{1} - k_{2}} \right)!}}.}} & \left( {{Eq}.\mspace{14mu} 10} \right) \end{matrix}$

c) continue to enumerate other teams in a similar manner (e.g., allocate a participant and then find all possibilities for others) until there are only k_(L) participants left, who will form the L-th team.

Many methods may be used to implement this general procedure. FIG. 16 is a flowchart illustrating the steps performed during one such method. For ease of description, the n participants in the participant roster are indexed as 1, 2, . . . , n. A team combination is then a permutation of these index numbers 1, 2, . . . , n. A team sequence C of length n is maintained to represent a team combination where the first k₁ numbers represent the indices of the participants in the first team; the next k₂ numbers represent the indices of the participants in the second team, and so on. The order of numbers in sequence C is important only in this process. It is irrelevant when outputting the sequence C as a team combination. In fact, the order of teams in the sequence C and the order of numbers in each team may optionally be randomized before outputting the sequence C as a team combination. In the process, one position in each team (e.g., the first position of each team) is fixed unless otherwise explicitly described.

When the process starts (step 802), an empty buffer B is created, the buffer is filled with the sequence C in ascending order with numbers 1, 2, . . . , n, and the sequence C is outputted as a team combination (step 804). The order of teams in the sequence C and the order of numbers in each team may optionally be randomized before outputting the sequence C as a team combination.

At step 806, the last team, C(n−k_(L)+1), C(n−k_(L)+2), . . . , C(n), is moved into the buffer B. The sequence C is then searched backward from position n−k_(L) (i.e., the last number of the (k_(L−1))-th team) to find a number C(i) that is not at a fixed position and is smaller than the largest number in the buffer B (step 808). If such a number C(i) is found after searching the entire sequence C (step 810), it means that all possible team combinations have been output, and the process terminates (step 812). Otherwise, C(i) and the smallest number in the buffer B that is larger than C(i) are swapped, and C(i+1), C(i+2), . . . , C(n−k_(L)) are moved into the buffer B (step 810). Then, a check is made as to whether C(i) is the last member of a team by checking whether i equals k₁, k₁+k₂, . . . , or k₁+k₂+ . . . +k_(L−1) (step 612). If no, a B(j) that is greater than C(i) is found, i is increased by 1, and B(j) is moved to C(i) (step 814). Then, the process loops back to step 812. If at step 812 it is determined that C(i) is the last member of a team, a further check is made to determine whether the buffer B is empty (step 816). If buffer B is not empty, all numbers in the buffer B are moved into sequence C in ascending order to fill in positions i+1, i+2, . . . , n of sequence C (step 818), and the process loops back to step 806. Otherwise, the process loops directly back to step 806. FIG. 17 lists the first twelve (12) team partition sequences output from the above process during the dividing of nine (9) participants into three teams each having three members.

Returning to FIG. 14, the manner by which a discrepancy value is calculated at step 720 is now described. A discrepancy value is calculated for a team combination by using the pair-wise average difference scores of each category for the teams in the team combination (calculated at step 714) to evaluate how well the team combination meets the team selection requirement. A team combination with a lower discrepancy value more closely meets the team selection requirement. To calculate the discrepancy value for a team combination, the pair-wise average difference scores of each category for the teams in the team combination are weighted and summed together.

The weighting factor for the average pair-wise difference scores in each category is determined by the choices to the statements in the target mix section 610 shown in FIG. 13. As described above, the options of each statement in section 610 are quantized such that a larger weighting factor is associated with an option indicating (positively or negatively) higher importance of the corresponding category in the team selection routine, and a smaller weighting factor is associated with an option indicating (positively or negatively) less importance of the corresponding category in the team selection routine.

The options of each statement in target mix section 610 are also assigned “signs” according to whether they positively or negatively indicate the importance. Specifically, positive options (options of “agree” and “neutral”) are assigned a value of 0, and negative options (options of “disagree”) are assigned a value of 1. FIG. 18 shows the target mix section 610 in FIG. 13 together with the weighting factors and signs for each option in accordance with an exemplary scheme. With this scheme, the weighting factors and signs for the selected options are: W_(I)=0, S_(I)=0, W_(P)=4, S_(P)=1, W_(G)=4, S_(G)=0, W_(T)=4, S_(T)=0, where W_(I), S_(I), W_(P), S_(P), W_(G), S_(G), W_(T) and S_(T), respectively, are the weighting factors and signs for the interest profile, personality profile, grades and time work together.

The average pair-wise difference score for the l-th team (denoted as F_(l)), where l=1, 2, . . . , L, is then calculated as the average of the normalized pair-wise difference scores for each pair of participants in the team that are weighted by the corresponding weighting factors, according to:

F _(l)=MEAN(W _(I)(I _(i,j)(1−S _(I))+(1−I _(i,j))S _(I))+W _(P)(P _(i,j)(1−S _(P))+(1−P _(i,j))S _(P))+W _(G)(G _(i,j)(1−S _(G))+(1−G _(i,j))S _(G))+W _(T)(T _(i,j)(1−S _(T))+(1−T _(i,j))S _(T)))   (Eq. 11)

where the function MEAN( ) is taken for all (i, j) pairs that the participants H_(i) and H_(j) are in the l-th team. Here, the (i, j) pair is unordered, i.e., (i, j) is the same as (j, i).

If there exist other categories, their normalized pair-wise difference scores should also be properly weighted in accordance with the facilitator's settings, and incorporated into the summations inside the MEAN( ) function in Eq. 11.

The number of summations in the MEAN( ) function in Eq. 11 depends on the number of members in the team. For the l-th team having k_(l) participants, there are k_(l)!/(2!(k_(l)−2)!)) summations in the MEAN( ) function.

The team discrepancy value (denoted as V) of a team combination is the mean of the average pair-wise difference score F_(l) for all teams in the team combination, plus the weighted standard deviation (STD) of the average pair-wise difference score F_(l) for all teams in the team combination, and is expressed as:

V=(1−α)MEAN(F _(l))+αSTD(F _(l))   (Eq. 12)

where STD( ) is the standard deviation function, MEAN( ) and STD( ), respectively, are taken for all l=1, 2, . . . , n, and α is the weighting factor (1≧α≧0).

The weighting factor may be predefined, or may be designated by the facilitator, for example. It indicates how important the mean and the STD of F_(l), respectively, are in the team selection routine. For example, α=0 implies that the STD of F_(l) is not considered in the routine. A larger weighting factor α implies more importance of the STD of F_(l) in the routine. In this embodiment, the weighting factor α is defined as √{square root over (L)}/(1+√{square root over (L)}).

As described above, a smaller team discrepancy value V indicates a more desirable team combination. A search of all the possible team combinations is therefore done to identify the team combination giving rise to the lowest team discrepancy value V. Accordingly, the team selection routine thereby employs a numerical optimization technique, as will be understood by those of skill in the art. In case there are multiple team combinations giving rise to the same smallest team discrepancy value V, a team combination is randomly selected therefrom.

In this embodiment, the team selection routine is carried out in what may be said to be generally “one step”, whereby a candidate of the desired team combination is temporarily stored in memory, and is compared with each possible team combination upon enumeration. The candidate stored in memory is replaced by the enumerated team combination if the team discrepancy value V of the latter is lower than that of the former. The team combination giving rise to the smallest team discrepancy value V is obtained after all possible team combinations have been enumerated. Alternatively, the team selection routine may be carried out in generally “two steps”, whereby all possible team combinations are first enumerated, and a search of all of the enumerated teams for the team combination having the lowest team discrepancy value V is then conducted.

Having calculated the team combination giving rise to the lowest discrepancy value V, the set of teams making up that team combination is then stored and, optionally, also displayed. The team selection routine then terminates (step 724).

In an alternative embodiment, certain mandatory criteria for team selection may be specified. Such mandatory criteria may be, for example, no average pair-wise difference score F_(l) of any team may be larger than a certain threshold, or that all teams must consist of both genders. In this alternative embodiment, the process illustrated in FIG. 14 is slightly modified (at step 718). Thus, when such criteria are set, at step 718, after enumerating each possible team combination, a check is made to determine whether all teams in the generated team combination satisfy the mandatory criteria. If not, the generated team combination is dropped so as not to be considered by the team selection routine. If no team combination meets the mandatory criteria, a warning that no team combination is found, is provided and optionally, the team combination having the lowest discrepancy value V that does not satisfy the mandatory criteria is also presented.

In the above embodiments, the team selection routine determines the team combination giving rise to the lowest team discrepancy value V from a list of all possible team combinations. However, in some situations, enumerating all possible team combinations may require a large computational cost. In an alternative embodiment, the team selection routine selects a team combination giving rise to the lowest team discrepancy value V from a subset of all possible team combinations, whereby the subset is determined using a lower computational cost. This embodiment is particularly suitable for cases where the class comprises a large number of participants where the processing would be prohibitive to fast selection of teams. This embodiment modifies step 718 of the process shown in FIG. 14 such that, instead of enumerating all possible team combinations, only a predefined number of team combinations (e.g., 100 combinations) are randomly generated. In this case, the selected teams are those that make up the team combination having the lowest discrepancy value V among the randomly generated team combinations.

In yet another embodiment, after the team combination from the predefined number of randomly generated team combinations has been selected, the facilitator's activity is monitored, and if it is determined that the facilitator did not interact with the participant management window (i.e., the host computer is “idle”), more random team combinations are generated and the team discrepancy values associated with the newly generated team combinations are compared with the previously selected team combination. The previously selected team combination is substituted with a newly generated random team combination if the latter gives rise to lower discrepancy value V. This process is continued until the facilitator performs an action (e.g., moves the mouse, clicks a button, or types a key, etc.).

In yet another embodiment, both the number of teams and the team size can be entered manually. In this case, a verification is made that the sum of the manually entered team sizes is equal to the total number of participants in the class, and a prompt for a modification of team sizes is displayed if their sum is not equal to the total number of participants. If the sum of the team sizes is equal to the total number of participants, the team selection routine as described above, is started with the exception that the step of determining the team size (step 716 in FIG. 14) is omitted.

In still yet another embodiment, instead of selecting a desired team size, an upper team size limit S_(max) and a lower team size limit S_(min) may be selected. In this case, a team may have any number of participants that is not more than the upper team size limit and not less than the lower team size limit. The team selection routine may give rise to the team combination having the lowest team discrepancy value or an alternative team combination as described above with a modification in the step of determining team size (step 716 in FIG. 14) and the step of enumerating possible team combinations (step 718 in FIG. 14).

The step of determining team size (step 716) is modified to determine the largest possible number of teams as follows:

L _(max) =n/S _(min).   (Eq. 13)

Then, in the modified step of enumerating possible team combinations (step 718), fictitious participants are added to the participant roster so that the participant roster may be divided into L_(max) equal teams. The number of fictitious participants is expressed as:

n _(f) =L _(max) S _(max) −n.   (Eq. 14)

After adding n_(f) fictitious participants, the possible team combinations are enumerated similar to the description above without distinguishing the fictitious participants from the real participants. All possible team combinations may be enumerated, if the team combination having the lowest team discrepancy value V is needed. After generating a team combination, the fictitious participants are removed, and then the size of each team is checked. Empty teams (teams having no real participants) are dropped. If any of the remaining teams has a size smaller than the lower team size limit requirement, the team combination is dropped and is not used by the team selection routine.

If an alternative team combination is needed, a number of team combinations is randomly generated. After generating a team combination, the fictitious participants are removed, and then the size of each team is checked. Empty teams (teams having no real participants) are dropped. If any of the remaining teams has a size smaller than the lower team size limit, the team combination is dropped. This process is repeated until the number of team combinations that satisfy the lower and upper team size limits reaches the predefined number.

In either of the above two cases, it is possible that no team combination would satisfy the lower and upper team size limits requirement. For example, if a class has eleven (11) participants, and it is required that all teams must have no less than four (4) participants and no more than five (5) participants, there is no team combination would meet the requirement. If no team combination satisfying the lower and upper team size limits requirement can be generated, the team selection routine terminates and a warning is displayed to indicate that no team combination could be found. In this case, the facilitator may modify the requirements and run the team selection routine again. Alternatively, impossible combinations could be determined and the user interface adjusted to prohibit these impossible cases.

After selecting the team combination using a given team profile, the teams making up the selected team combination may be used when administering assessments using the administration application. In this case, the responses from the remote units 62 assigned to participants on a given team are used to represent the responses of all the participants on the team.

Three collaboration models may be selected using the administration application, namely a first response model, a most common response model and a rotating response model. In the first response model, the response from the first participant in a team to enter a response using their remote unit 62 is used as the team response, and the subsequent responses of participants on the same team are ignored by the participant response application software.

In the most common response model, all the participants on a given team enter their responses, and the most common response, e.g. the same response that most participants made, is used as the team response. If more than one most common response is identified, a most common response is chosen as follows:

-   (i) If, among the choices provided with the question, only one     choice is correct, the most common incorrect response that is first     received is selected as the team response; -   (ii) If two or more choices of the question are correct, and all     most common responses are correct (e.g., match any one or ones of     the correct choices), the most common response that is first     received is selected as the team response; and -   (iii) If two or more choices of the question are correct, and some     most common responses are incorrect, the most common incorrect     response that is first received is selected as the team response.

Those skilled in the art will appreciate that other scenarios are also available for selecting a team response from a plurality of most common responses.

In the rotating response model, the team response is alternatively selected from participants' responses, so that each team participant in turn has the chance to response for the team. In this case, teams are not notified as to whose turn it is to respond to the question. Thus, all participants in the team still have to enter their responses for each question although only one participant's response will be selected as the team response. The team participant whose response is used to represent the team response for a given question may be assigned according to a repeating cycle or pattern, it may be randomly assigned, or it may be assigned based on which team participant entered the last incorrect response for the team. In the latter case, team participants are cyclically or randomly assigned to enter the team response until an incorrect team response is entered. When an incorrect response is entered, the same participant that entered the incorrect team response is assigned to enter the next team response, until a correct team response is entered, after which the cyclical/random assignment resumes.

In any of the previously described collaboration models, the team participants may or may not be allowed to collaborate and discuss responses outside the framework of the participant response application software before, during, or after the assessment is administered using the participant response application software.

The teams generated using a given team profile may also be used for projects or assessments not related to the participant response application software. For example, a team profile could be used to generate reading or study groups for a language class, or laboratory partners for a science class.

During a team activity or after the team activity is complete, a team feedback questionnaire may be sent to the participants via the participant response application software. A pre-defined feedback questionnaire may be selected from a library of feedback questionnaires, or a feedback questionnaire may be manually created. The results of the feedback questionnaire may be used to determine future team profiles.

In an alternate embodiment, the questionnaires may be e-mailed to the participants, accessed by the participants via the internet, or via a networked drive, or by various other means.

In the above exemplary embodiments, questions of a questionnaire are displayed on the IWB 54. However, those skilled in the art will appreciate that, in some alternative embodiments, questions of a questionnaire may be transmitted to each hand-held remote unit 62, and displayed on its display 124.

In the above exemplary embodiments, the selected teams are those that make up a team combination having the smallest value of discrepancy V. However, in other embodiments, a team combination may be selected by finding the largest value of a function of discrepancy V. For example, a search may be performed to find a team combination having the largest value of “team consistency” W, where W may be represented by W=−V, or by W=1/V. Still other functions of V would also be possible.

The administration application may be embodied as computer executable instructions or program code stored on a computer readable medium. The computer readable medium is any data storage device that can store data, which can thereafter be read by a computer system. Examples of computer readable medium include for example read-only memory, random-access memory, CD-ROMs, magnetic tape and optical data storage devices. The computer readable program code can also be distributed over a network including coupled computer systems so that the computer readable program code is stored and executed in a distributed fashion.

In the embodiments described above, the participant response system is described as employing an IWB comprising an analog resistive touch screen. Those of skill in the art will appreciate that other interactive input systems such as machine-vision touch systems (see U.S. Pat. Nos. 6,141,000; 6,337,681 etc.), electromagnetic touch system, capacitive touch systems, acoustic touch system etc. may be employed. Also, the interactive input system and the receiver need not be connected to the host computer 52 by physical cables. Rather, the interactive input system and/or receiver may communicate with the host computer via wireless links.

Although embodiments have been described above with reference to the accompanying drawings, those of skill in the art will appreciate that variations and modifications may be made without departing from the spirit and scope thereof as defined by the appended claims. 

1. A method for selecting teams from a group of participants using a participant response system comprising the steps of: collecting participant information; and selecting teams of participants by comparing the collected participant information with team requirement information using a computer-implemented numerical optimization technique.
 2. The method of claim 1, wherein the collected participant information and the team requirement information are numeric.
 3. The method of claim 1, wherein said selecting comprises calculating possible team combinations, each of the team combinations having an associated discrepancy value, and selecting one team combination thereby to select the teams of participants at least based on the discrepancy values.
 4. The method of claim 3, wherein the team combination selecting comprises selecting the team combination associated with the lowest associated discrepancy value.
 5. The method of claim 3 comprising: creating at least one profile for each participant; comparing the profiles of the participants to yield scores for the participants; and using the scores to calculate the possible team combinations.
 6. The method of claim 5 wherein said creating comprises creating a plurality of profiles for each participant.
 7. The method of claim 6 further comprising eliminating possible team combinations that fail to satisfy the team requirement information prior to selecting the teams of participants.
 8. The method of claim 7, wherein the team combination selecting comprises selecting the team combination associated with the lowest associated discrepancy value.
 9. The method of claim 1, wherein the participant information is collected from one or more of: responses to at least one participant questionnaire, a facilitator, and past participant information.
 10. The method of claim 9, wherein the responses to the at least one participant questionnaire are collected electronically from remote units associated with participants.
 11. The method of claim 10, further comprising prompting participants to respond to said at least one participant questionnaire.
 12. The method of claim 11, wherein at least one of the participant questionnaire and the team requirement information are defined by the facilitator.
 13. The method of claim 10, wherein said selecting comprises calculating possible team combinations, each of the team combinations having an associated discrepancy value, and selecting one team combination thereby to select the teams of participants at least based on the discrepancy values.
 14. The method of claim 13 comprising: creating at least one profile for each participant; comparing the profiles of the participants to yield scores for the participants; and using the scores to calculate the possible team combinations.
 15. The method of claim 14 wherein said creating comprises creating a plurality of profiles for each participant.
 16. The method of claim 15 further comprising eliminating possible team combinations that fail to satisfy the team requirement information prior to selecting the teams of participants.
 17. The method of claim 16, wherein the team combination selecting comprises selecting the team combination associated with the lowest associated discrepancy value.
 18. The method of claim 3, wherein the team requirement information represents desired team characteristics.
 19. The method of claim 18, wherein the team requirement information comprises at least one weight associated with the participant information, the at least one weight being defined in accordance with the desired team characteristics.
 20. The method of claim 18, wherein the team requirement information comprises desired team size.
 21. The method of claim 20, wherein the desired team size is determined by one of the numerical optimization technique and a facilitator.
 22. The method of claim 3, wherein each discrepancy value is determined by calculating pair-wise scores for the teams of the possible team combinations.
 23. The method of claim 22, wherein said selecting comprises calculating possible team combinations, each of the team combinations having an associated discrepancy value, and selecting one team combination thereby to select the teams of participants at least based on the discrepancy values.
 24. The method of claim 3, wherein said calculating comprises enumerating a set of all possible team combinations.
 25. The method of claim 24, wherein said selecting comprises calculating possible team combinations, each of the team combinations having an associated discrepancy value, and selecting one team combination thereby to select the teams of participants at least based on the discrepancy values.
 26. The method of claim 25 comprising: creating at least one profile for each participant; comparing the profiles of the participants to yield scores for the participants; and using the scores to calculate the possible team combinations.
 27. The method of claim 26 wherein said creating comprises creating a plurality of profiles for each participant.
 28. The method of claim 27 further comprising eliminating possible team combinations that fail to satisfy the team requirement information prior to selecting the teams of participants.
 29. The method of claim 28, wherein the team combination selecting comprises selecting the team combination associated with the lowest associated discrepancy value.
 30. The method of claim 3, wherein said calculating comprises randomly generating a subset of possible team combinations.
 31. The method of claim 30, wherein said selecting comprises calculating possible team combinations, each of the team combinations having an associated discrepancy value, and selecting one team combination thereby to select the teams of participants at least based on the discrepancy values.
 32. The method of claim 31 comprising: creating at least one profile for each participant; comparing the profiles of the participants to yield scores for the participants; and using the scores to calculate the possible team combinations.
 33. The method of claim 32 wherein said creating comprises creating a plurality of profiles for each participant.
 34. The method of claim 33 further comprising eliminating possible team combinations that fail to satisfy the team requirement information prior to selecting the teams of participants.
 35. The method of claim 34, wherein the team combination selecting comprises selecting the team combination associated with the lowest associated discrepancy value.
 36. A computer readable medium having stored thereon computer program code executable by a processing device for performing the method of claim
 1. 37. A participant response system comprising: a plurality of remote units, each remote unit configured to generate data in response to participant questionnaire input; and processing structure communicating with the remote units, said processing structure comparing said data collected from said remote units with team requirement information using a numerical optimization technique and selecting teams of participants based on the comparison.
 38. The system of claim 37, wherein the collected data and the team requirement information are numeric.
 39. The system of claim 37, wherein the participant questionnaire and the team requirement information are defined by a facilitator.
 40. The system of claim 39, wherein the team requirement information is represents desired team characteristics.
 41. The system of claim 40, wherein the team requirement information comprises at least one weight associated with the participant information, the at least one weight being defined in accordance with the desired team characteristics.
 42. The system of claim 37, wherein the processing structure calculates possible team combinations, each of the team combinations having an associated discrepancy value, and selects one team combination thereby to select the teams of participants at least based on the discrepancy values.
 43. The system of claim 42, wherein the team combination selecting comprises selecting the team combination associated with the lowest associated discrepancy value.
 44. The system of claim 42, wherein each discrepancy value is determined by calculating pair-wise scores for the teams of the possible team combinations.
 45. The system of claim 42, wherein the processing structure calculates all possible team combinations.
 46. The system of claim 45, wherein the processing structure selects the team combination associated with the lowest associated discrepancy value.
 47. The system of claim 45 wherein the processing structure creates at least one profile for each participant, compares the profiles of the participants to yield scores for the participants and uses the scores to calculate the possible team combinations.
 48. The system of claim 47 wherein the processing structure creates a plurality of profiles for each participant.
 49. The system of claim 48 wherein the processing structure eliminates possible team combinations that fail to satisfy the team requirement information prior to selecting the teams of participants.
 50. The system of claim 44, wherein the processing structure calculates a subset of possible team combinations.
 51. The system of claim 50 wherein the processing structure creates at least one profile for each participant, compares the profiles of the participants to yield scores for the participants and uses the scores to calculate the possible team combinations.
 52. The system of claim 51 wherein the processing structure creates a plurality of profiles for each participant.
 53. The system of claim 52 wherein the processing structure eliminates possible team combinations that fail to satisfy the team requirement information prior to selecting the teams of participants.
 54. The system of claim 53, wherein the processing structure selects the team combination associated with the lowest associated discrepancy value. 